﻿using QuanLySieuThi.Models;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace QuanLySieuThi.Controllers
{
    public class QuanLyHoaDonNhap : BaseController<HoaDonNhap>
    {
         private static QuanLyHoaDonNhap _uniqueObject = null;
        public static QuanLyHoaDonNhap UniqueObject
        {
            get
            {
                if (_uniqueObject == null)
                    _uniqueObject = new QuanLyHoaDonNhap();
                return _uniqueObject;
            }
        }
        public QuanLyHoaDonNhap()
        {
        }

        public void XoaTheoMaNhanVien(string maNhanVien)
        {
            //Lấy danh sách tất cả các hóa đơn của nhân viên này
            List<string> listMaHoaDon = DanhSachMaHoaDonTheoMaNhanVien(maNhanVien);

            //Xóa hóa đơn chi tiết tương ứng của các hóa đơn trên
            foreach (string ma in listMaHoaDon)
                QuanLyHoaDonChiTietNhap.UniqueObject.XoaTheoMaHoaDon(ma);
            
            //Sau cùng mới xóa các hóa đơn tương ứng với nhân viên này
            db.ExecuteNonQuery("delete HoaDonNhap where MaNhanVien ='" + maNhanVien + "'");
        }

        private List<string> DanhSachMaHoaDonTheoMaNhanVien(string maNhanVien)
        {
            List<string> list = new List<string>();
            DataTable table = db.ExecuteQuery("select * from HoaDonNhap where MaNhanVien = '" + maNhanVien + "'");
            for (int i = 0; i < table.Rows.Count; i++)
            {
                string s = table.Rows[i]["MaHoaDonNhap"].ToString();
                if (s.Length > 2)
                    list.Add(s);
            }
            return list;
        }
    }
}
